/*
  学习目标：创建泛型函数
  作用：捕获调用时的参数类型，可以当做类型使用
  语法： function xxx<占位符>(aa: 占位符)：占位符{}
    👍推荐优先使用T， T代表的是type的缩写
  优势：比普通的函数类型，更容易复用
*/

function fn<T>(aa: T): T {
  return aa;
}

let result1 = fn(1); // 返回值的类型：number类型
result1.toFixed(2);

let result2 = fn('1'); // 返回值类型： string
result2.startsWith('1');

let result3 = fn(true);
let result4 = fn([1, 2, 3]);

// 语法？？
